home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Supervisor's Toolkit
/
Network Supervisor's Toolkit.iso
/
tools
/
lu62
/
port
/
bss0.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-07-10
|
28KB
|
810 lines
/* k 0224 23/09/91 */
/* k 0225 23/09/91 */
/* k 0226 24/09/91 */
/* k 0230 09/10/91 *//* assemble some data */
/* k 0231 10/10/91 *//* resident module */
/* k 0233 12/10/91 *//* Trn modules */
/* k 0234 14/10/91 *//* OVL_TYPE */
/* k 0235 18/10/91 *//* pswitch for showdata */
/* k 0243 20/10/91 *//* common resources */
/* k 0254 01/11/91 *//* yes, no */
/* k 0264 12/11/91 *//* New code tables */
/* k 5001 18/11/91 *//* from KIROV */
/* k 0282 12/12/91 *//* from BSS */
/* k 0292 23/12/91 *//* save initial path */
/* k 0304 23/02/92 *//* path */
/* k 0306 24/02/92 *//* ddoff */
/* k 0307 24/02/92 *//* 300-byte segments */
/* k 0320 22/03/92 *//* New initialization */
/* k 1082 23/03/92 *//* definition bufvt,buflan */
/* k 1083 25/03/92 *//* SOLARIS-2 adapter */
/* k 0322 26/03/92 *//* Files menu */
#include <include.h>
#include <vt.h>
#include <conio.h>
#include <emadapt.h>
#include <bufmap.h>
#include <dcr.h>
#include <tbs.h> /* 5001 */
#include <tabm.h>
#include <popen39.h>
#include <pget39.h>
#include <pfree39.h>
#include <pwrite39.h>
#include <pread39.h>
#include <bufdrv.h>
#include <p3927c.h> /*ßΓpπ¬Γπpδ ææé ¿ ßΓpπ¬Γπpδ ñ«»«½¡¿Γѽ∞¡δσ »ápá¼ÑΓp«ó drvtrn39*/
#include <p3926c.H> /* TRANSMIT */
#include <p3928c.H> /* RECEIVE */
#include <p390bc.H> /* BUFFER_GET */
#include <p3915c.H> /* BUFFER_FREE */
#include <p3915t.H> /* OPEN */
#include <p3916c.H> /* CLOSE */
#include <p3927t.H>
#include <p3928t.H>
#include <p390bt.H>
#include <p3926t.H> /* 5001 */
#define MAXDIR 66 /* @0322 */
struct SREGS {
unsigned int es;
unsigned int cs;
unsigned int ss;
unsigned int ds;
};
struct WORDREGS {
unsigned int ax, bx, cx, dx, si, di, cflag, flags;
};
struct BYTEREGS {
unsigned char al, ah, bl, bh, cl, ch, dl, dh;
};
union REGS {
struct WORDREGS x;
struct BYTEREGS h;
};
struct buf_vt { /* @0233 */
#if (OS_TYPE!=0) /* @0215 */
unsigned char contents [4000]; /* @0208 */
#endif /* @0215 */
unsigned int cursor_size;
int curx,cury,currmode; /* @0233 */
unsigned char winleft,wintop,winright,winbottom;
};
extern int
#if (OVL_TYPE==1)
Trn_frame(),Trn_set(),Trn_logon(),Trn_data(),Trn_logoff(),
Trn_status(),Trn_vpexit();
#else
frame(),signon(),set(),logon(),data(),logoff(),
status(),vpexit();
extern int frame0(),frame1();
extern int status0(),status1();
extern int exit1(),exit0();
extern int logoff0(),logoff1(),logoff2(),logoffgo(); /* 0014 */
extern int data0(),data1(),data2(),data3(),data4(),data5();
extern int data6(),data7(),data8(),data9(),data10(); /* @0060 */ /* @0057 */
extern int data11(),data12(); /* @0061 */ /* @0060 */
extern int logon0(),logon1(),logon2(),logon3(),logonexit();
extern int signon0();
extern int signon1();
extern int signon2();
extern int set0(),set1(),set2(),set3(),set4(),set5(),set6();
#endif
extern struct rqb *appl(),*path(),*sessa(),*fisc(),*csc(),*cpmgr();
extern struct rqb *pu(),*dfc(),*pfrom(),*landlc(),*config(),*npinput();
extern struct rqb *dlc7920(); /* 1001 */
extern struct rqb *dlc7920s(); /* 1083 */
extern struct rqb *dlctrn(); /* 1007 */
extern struct rqb *dlctrn39(); /* 1007 */
extern struct rqb *dlcasync(); /* 1051 */
extern struct rqb *dataw_code(); /* @0072 */
char *rentdos=NULL;
short curs[5]={0},curx[5]={0},cury[5]={0}; /* 0014 */
short cur_curs=0,cur_curx=0,cur_cury=0;
short com_v=0;
/* @0046 */ /* 0017 */
/* @0046 */
/* @0046 */
char sw_wait=0x00; /* @0184 */
char xwbuf[256]={0x00}; /* @0192 */
char wbuf[256]={0x00}; /* @0192 */
char wbufd[256]={0x00}; /* @0192 *//* @0243 */
struct mat (*wmat)[3]={NULL}; /* @0054 */
short ddfff=0; /* @0200 */ /* @0044 *//* @0159 */
/* @0159 */
char *filename={" "};/* @0060 */
struct segoff { /* @0158 *//* @0158 */
unsigned short seg; /* @0159 */ /* @0158 */
unsigned short off; /* @0158 */ /* @0158 */
}; /* @0159 */
struct segoff (*dout)[512]={NULL}; /* @0158 *//* @0159 */
long cseek=0, nseek=0, oldseek=0; /* @0157 @0158 *//* @0160 */
char d_g[]="\\d"; /* @0174 *//* @0184 */
unsigned short lasti=0,curi=0,curseg=0; /* @0159 */
char mail[]="mail\\"; /* @0157 *//* @0304 */
char dpp[60]={0x00}; /* @0306 */
char ddpp[60]={0x00}; /* @0157 *//* @0243 *//* @0306 */
char dtxt8[]=" "; /* TEMPORARY */
char eoflag=0x00; /* @0161 */
short type=0;
short nida=0,oldnida=0; /* @0060 */ /* @0057 */
struct rqb *nrda=NULL,*crda=NULL,
*orda=NULL,*oldnrda=NULL; /* @0060 */ /* @0057 */
short last=0; /* @0060 */
unsigned short plj=0,lj=0;/* @0061 @0060 @0158 *//* @0159 */
short fdd=0,fddd=0,le=0; /* @0159 */
short dfdd=0; /* @0243 */
unsigned char *tp=NULL; /* @0061 *//* @0184 */
long sendno=0; /* @0072 */
char scrn=0x00; /* 0017 */
struct rqb *rqbp=NULL;
struct segprf *segp=NULL;
struct init3 *wp=NULL; /* @0050 */ /* 0017 */
char rhhdr0[3]={0x63,0x80,0x00}; /* @0048 */
char cond=0x00; /* 0017 */
char name[8]="";
short signbuf[5]={Bufsign1,Bufsign2,Bufsign3,
Bufsign4,Bufsign5}; /* @0208 */
short sigsw[5]={0,0,0,0,0}; /* @0029 */
short ss[5]={0}; /* @0029 */
char *pt1=NULL,*pt2=NULL,*pt3=NULL;
unsigned char *rdos=NULL; /* @0201 */
short msg28=0; /* @0201 */
struct nau *vtnau=NULL; /* @0044 */
char ch[26]={0};
short l=0,j=0;
short leng=0; /* @0044 */
short px1=0,py1=0,px2=0,py2=0,pcurx=0,pcury=0,pxw=0,pyw=0;
char *begpt=NULL,*curpt=NULL;
char pattr='\0';
union REGS reg={0};
short offs=0;
short hoffs=0; /* @0233 */
short textcol[5]={0},backcol[5]={0}; /* 0014 */ /* 0017 */
short msw2=0; /* @0221 */
int akey=0,bkey=0;
struct ekran {
char icon;
char attrib;
};
/* @0264 */
int attr_addr[1920]={0};
char buffer [1920]={0x00}, attrib[16]={0x00};
struct ekran screen [1920]={0};
int cursor_pos=0,laddr=0, haddr=0,
enable_flag_port=ON,enable_flag_kbd=ON,enable_flag_sys=ON;
char *mix=NULL;
int cursor_row=0, cursor_col=0;
int ind_y=0;
unsigned int enable_x1=0,enable_x2=0,insert_x=0,insert=0;
int portkey=0;
int swi=0;
char colortable[256]={0x00};
unsigned int oldcursor=0, shortcursor=0,
tallcursor=0, nocursor=0x2000,vissegment=0;
unsigned int baseport=0;
struct save_7927 buf7927={0}; /* @0208 */
struct buf_dos {
#if (OS_TYPE!=0) /* @0215 */
unsigned char contents [4000]; /* @0208 */
#endif /* @0215 */
unsigned int cursor_size;
int curx,cury,currmode; /* @0233 */
} buf2580={0};
char fmindex[] = /* 255 means that profile is not allowed */
{0, /* 0 */
255, /* 1 */
1, /* 2 */
2, /* 3 */
3, /* 4 */
4, /* 5 */
255, /* 6 */
5, /* 7 */
255,255,255,255,255,255,255,255,255, /* 8-16 */
6, /* 17 */
7}; /* 18 */
char tsindex[] = /* 255 means that profile is not allowed */
{255, /* 0 */
0, /* 1 */
1, /* 2 */
2, /* 3 */
3, /* 4 */
4, /* 5 */
255, /* 6 */
5, /* 7 */
255,255,255,255,255,255,255,255,255}; /* 8-16 */
/* sessa */
struct avt0 *avt=NULL; /* AVT table */ /* @0087 */
unsigned char Flag28=0x00; /* @0201 */
unsigned char Flagport=0x00; /* @0201 */
unsigned char optflg=0x00,flag2=0x00,tf=0x00,sflag=0x00; /* @0203 */
/* @0230 */
struct prqb *first_rqb=NULL; /* @0023 */
struct prqb *last_rqb=NULL; /* @0023 */
struct wrktb tmp2tb[1]={0}; /* 1005 */
char *ptr=NULL; /* @0088 */ /* @0023 */
/* @0230 */
short bfd=0; /* @0206 */
struct srdt *ws=NULL;
struct rdt *wr=NULL;
struct mat *wn=NULL;
struct dlctb *wd=NULL; /* @0043 */
struct majtb *wm=NULL;
struct aname (*wa)[3]={NULL};
struct nau *wnau=NULL;
/* @0205 */
short rc=0; /* @0043 */
/* @0304 */
struct buf_vt bufvt2580={0}; /* @0215 *//* @0233 */
char far *videobuf=NULL; /* @0207 */
short sw1=0;
short sw2[5]={0,0,0,0,0}; /* 0014 */
short x1[5]={0},y1[5]={0},x2[5]={0},y2[5]={0}; /* 0014 */
short escptr[5]={0}; /* @0206 */ /* 0014 */
short esc=0;
short hsw=0;
short msw=0;
short input=0;
char escflg=0x00; /* @0046 */
(*escrtn)()=NULL; /* @0046 */
char save25[80]={0x00};
short escape=256+94; /* escape code CTRL F1 */
/* 0014 */
char vt_flag=0x00;
short scr_no=0;
short unit[4]={2020,100,8,272}; /* @0307 */
short nu=0;
/* 0017 */
short class=0;
/* @0034 */
struct rqb *bufp=NULL;
short *pf=NULL;
char dispflag='\0'; /* @0056 */
char pww[16]={0x00}; /* @0071 */
char outbuffer[1920]={0x00}; /* @0185 */
struct out7920 *out7920=NULL;/* @0185 */
int col=0; /* @0185 */
int row=0; /* @0185 */
int color=0; /* @0185 */
int width=0; /* @0185 */
/* va_list arg_list; */ /* @0185 */
struct parmglu *wglu=NULL;
struct tmp2 *wtmp2=NULL;
struct sess *wsess=NULL;
struct majtb *wmtb=NULL;
struct nausg *wnseg=NULL;
struct segprf *wseg=NULL;
struct th *wth=NULL;
struct rh *wrh=NULL; /* @0157 */
union ru *wru=NULL;
struct hscb *whscb=NULL;
struct lhscb *wlhscb=NULL;
struct bind *wbind=NULL; /* 1003 */
char out_buffer[1920]={0}; /* 1003 *//* @0175 */
struct rqb *rrqb=0;
int was_bufm=0;
int was_vvodz=0;
char opr[20]={0};
/* 5001 */
unsigned char a_to_e[256]={
0X00,0X01,0X02,0X03,0X37,0X2D,0X2E,0X2F,/*0*/
0x16,0x05,0x25,0x0b,0x0c,0x0d,0x0e,0x0f,
0X10,0X11,0X12,0X13,0X3C,0X3D,0X32,0X26,/*1*/
0x18,0x19,0x3f,0x27,0x1c,0x1d,0x1e,0x1f,
0X40,0X4F,0X7F,0X7B,0X5B,0X6C,0X50,0X7D,/*2*/
0x4d,0x5d,0x5c,0x4e,0x6b,0x60,0x4b,0x61,
0XF0,0XF1,0XF2,0XF3,0XF4,0XF5,0XF6,0XF7,/*3*/
0xf8,0xf9,0x7a,0x5e,0x4c,0x7e,0x6e,0x6f,
0X7C,0XC1,0XC2,0XC3,0XC4,0XC5,0XC6,0XC7,/*4*/
0xc8,0xc9,0xd1,0xd2,0xd3,0xd4,0xd5,0xd6,
0XD7,0XD8,0XD9,0XE2,0XE3,0XE4,0XE5,0XE6,/*5*/
0xe7,0xe8,0xe9,0x4a,0xe0,0x5a,0x5f,0x6d,
0X79,0X81,0X82,0X83,0X84,0X85,0X86,0X87,/*6*/
0x88,0x89,0x91,0x92,0x93,0x94,0x95,0x96,
0X97,0X98,0X99,0XA2,0XA3,0XA4,0XA5,0XA6,/*7*/
0xa7,0xa8,0xa9,0xc0,0x6a,0xd0,0xa1,0x07,
#if (KOI8_TYPE == 0) /* Alternate coding */ /* @0181 */
0XC1,0XBA,0XC2,0XBF,0XBC,0XC5,0XEC,0XFA,/*8*/
0xcb,0xcc,0xd2,0xce,0xd4,0xc8,0xd6,0xdc,
0XD7,0XC3,0XE3,0XEB,0XBE,0XE7,0XBB,0XFE,/*9*/
0xfb,0xfd,0x7d,0xef,0xee,0xfc,0xb8,0xdd,
0X81,0X78,0XAF,0X8D,0X8A,0X85,0XAE,0XB2,/*A*/
0x8f,0x90,0x9a,0x9b,0x9c,0x9d,0x96,0x9f,
0X2B,0X2C,0X09,0X20,0X29,0X43,0X44,0X45,/*B*/
0x46,0x39,0x30,0x38,0x08,0x47,0x48,0x28,
0X23,0X24,0X06,0X21,0X15,0X2A,0X49,0X51,/*C*/
0x33,0x1a,0x34,0x36,0x31,0x35,0x3a,0x52,
0X53,0X54,0X56,0X57,0X62,0X63,0X64,0X65,/*D*/
0x66,0x17,0x22,0x14,0x04,0x0a,0x1b,0x3b,
#else /* GOST */ /* @0181 */
0X2B,0X2C,0X09,0X20,0X29,0X43,0X44,0X45,/*8*/
0x46,0x39,0x30,0x38,0x08,0x47,0x48,0x28,
0X23,0X24,0X06,0X21,0X15,0X2A,0X49,0X51,/*9*/
0x33,0x1a,0x34,0x36,0x31,0x35,0x3a,0x52,
0X53,0X54,0X56,0X57,0X62,0X63,0X64,0X65,/*A*/
0x66,0x17,0x22,0x14,0x04,0x0a,0x1b,0x3b,
0XC1,0XBA,0XC2,0XBF,0XBC,0XC5,0XEC,0XFA,/*B*/
0xcb,0xcc,0xd2,0xce,0xd4,0xc8,0xd6,0xdc,
0XD7,0XC3,0XE3,0XEB,0XBE,0XE7,0XBB,0XFE,/*C*/
0xfb,0xfd,0x7d,0xef,0xee,0xfc,0xb8,0xdd,
0X81,0X78,0XAF,0X8D,0X8A,0X85,0XAE,0XB2,/*D*/
0x8f,0x90,0x9a,0x9b,0x9c,0x9d,0x96,0x9f,
#endif /* @0181 */
0X97,0X83,0XAC,0XAD,0X8C,0XA7,0X80,0XB6,/*E*/
0xb3,0xb5,0xb7,0xb1,0xb0,0xb4,0x76,0xa0,
0XC5,0X85,0X62,0X63,0X64,0X65,0X66,0X67,/*F*/
0x68,0x69,0x70,0x71,0x72,0x73,0x74,0xff };
unsigned char e_to_a[256]={ 0X00,0X01,0X02,0X03,0XDC,0X09,0XC2,0X7F,/*0*/
0xbc,0xb2,0xdd,0x0b,0x0c,0x0d,0x0e,0xff,
0X10,0X11,0X12,0X13,0XDB,0XC4,0X08,0XD9,/*1*/
0x18,0x19,0xc9,0xde,0x1c,0x1d,0x1e,0x1f,
0XB3,0XC3,0XDA,0XC0,0XC1,0X0A,0X17,0X1B,/*2*/
0xbf,0xb4,0xc5,0xb0,0xb1,0x05,0x06,0x07,
0XBA,0XCC,0X16,0XC8,0XCA,0XCD,0XCB,0X04,/*3*/
0xbb,0xb9,0xce,0xdf,0x14,0x15,0xfd,0x1a,
0X20,0XFA,0XF0,0XB5,0XB6,0XB7,0XB8,0XBD,/*4*/
0xbe,0xc6,0x5b,0x2e,0x3c,0x28,0x2b,0x21,
0X26,0XC7,0XCF,0XD0,0XD1,0XFB,0XD2,0XD3,/*5*/
0xfc,0xf1,0x5d,0x24,0x2a,0x29,0x3b,0x5e,
0X2D,0X2F,0XD4,0XD5,0XD6,0XD7,0XD8,0XF2,/*6*/
0xf3,0xf4,0x7c,0x2c,0x25,0x5f,0x3e,0x3f,
#if (KOI8_TYPE==0) /* Alternate coding */ /* @0181 */
0XF5,0XF6,0XF7,0XF8,0XF9,0X9A,0XEE,0XA0,/*7*/
0xa1,0x60,0x3a,0x23,0x40,0x27,0x3d,0x22,
0XE6,0X61,0X62,0X63,0X64,0X65,0X66,0X67,/*8*/
0x68,0x69,0xa4,0xa5,0xe4,0xa3,0xe5,0xa8,
0XA9,0X6A,0X6B,0X6C,0X6D,0X6E,0X6F,0X70,/*9*/
0x71,0x72,0xaa,0xab,0xac,0xad,0xae,0xaf,
0XEF,0X7E,0X73,0X74,0X75,0X76,0X77,0X78,/*A*/
0x79,0x7a,0xe0,0xe1,0xe2,0xe3,0xa6,0xa2,
0XEC,0XEB,0XA7,0XE8,0XED,0XE9,0XE7,0XEA,/*B*/
0x9e,0x80,0x81,0x96,0x84,0x85,0x94,0x83,
0X7B,0X41,0X42,0X43,0X44,0X45,0X46,0X47,/*C*/
0x48,0x49,0x95,0x88,0x89,0x8a,0x8b,0x8c,
0X7D,0X4A,0X4B,0X4C,0X4D,0X4E,0X4F,0X50,/*D*/
0x51,0x52,0x8d,0x8e,0x8f,0x9f,0x90,0x91,
0X5C,0XCF,0X53,0X54,0X55,0X56,0X57,0X58,/*E*/
0x59,0x5a,0x92,0x93,0x86,0x82,0x9c,0x9b,
0X30,0X31,0X32,0X33,0X34,0X35,0X36,0X37,/*F*/
0x38,0x39,0x87,0x98,0x9d,0x99,0x97,0xff };
#else /* GOST */ /* @0181 */
0XF5,0XF6,0XF7,0XF8,0XF9,0X9A,0XEE,0Xd0,/*7*/
0xd1,0x60,0x3a,0x23,0x40,0x27,0x3d,0x22,
0XE6,0X61,0X62,0X63,0X64,0X65,0X66,0X67,/*8*/
0x68,0x69,0xd4,0xd5,0xe4,0xd3,0xe5,0xd8,
0Xd9,0X6A,0X6B,0X6C,0X6D,0X6E,0X6F,0X70,/*9*/
0x71,0x72,0xda,0xdb,0xdc,0xdd,0xde,0xdf,
0XEF,0X7E,0X73,0X74,0X75,0X76,0X77,0X78,/*A*/
0x79,0x7a,0xe0,0xe1,0xe2,0xe3,0xd6,0xd2,
0XEC,0XEB,0Xd7,0XE8,0XED,0XE9,0XE7,0XEA,/*B*/
0xce,0xb0,0xb1,0xc6,0xb4,0xb5,0xc4,0xb3,
0X7B,0X41,0X42,0X43,0X44,0X45,0X46,0X47,/*C*/
0x48,0x49,0xc5,0xb8,0xb9,0xba,0xbb,0xbc,
0X7D,0X4A,0X4B,0X4C,0X4D,0X4E,0X4F,0X50,/*D*/
0x51,0x52,0xbd,0xbe,0xbf,0xcf,0xc0,0xc1,
0X5C,0XCF,0X53,0X54,0X55,0X56,0X57,0X58,/*E*/
0x59,0x5a,0xc2,0xc3,0xb6,0xb2,0xcc,0xcb,
0X30,0X31,0X32,0X33,0X34,0X35,0X36,0X37,/*F*/
0x38,0x39,0xb7,0xc8,0xcd,0xc9,0xc7,0xff };
#endif /* @0181 */
struct dcr dcr={0};
struct dcr_el dcr_el={0};
struct dcr ddcr={0}; /* @0243 */
struct dcr_el ddcr_el={0}; /* @0243 */
struct rqb *dataq=0;
char user[8]={0x00}; /* @0157 */
char duser[8]={0x00}; /* @0157 *//* @0243 */
struct data2 *wda=NULL;
int fff=0; /* @0157 *//* @0159 */
int cry=0; /* @0186 */
struct rqb *qrp=NULL; /* @0158 */
struct dcr *d_crec=NULL; /* @0157 */
struct dcr *dd_crec=NULL; /* @0157 *//* @0243 */
struct dcr_el *del=NULL; /* @0157 */
struct dcr_el *ddel=NULL; /* @0157 *//* @0243 */
struct nextprev { /* @0159 */
long next; /* @0159 */
long prev; /* @0159 */
} nextprev={0}; /* @0159 */
long seek=0; /* @0157 *//* @0158 */
short doff=0; /* @0157 */
short ddoff=0; /* @0306 */
unsigned char shiftfl=0x04; /* @0201 */
struct naus0 *nps=NULL;
int (*(pswitch[10]))()={ /* @0235 *//* @0322 */
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
NULL}; /* @0225 */ /* @0322 */
char inithdr[3]={0x01,0x06,0x81}; /* @0048 */
char termhdr[3]={0x01,0x06,0x83}; /* @0055 */
struct rqb *((*(funct_table[ST_N]))())={
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL}; /* 1083 */
/* @0264 */
char b_ins[]="INS";
char twoblanks[]=" ";
char u2[]="%2u"; /* @0226 */
char u4[]="%.4u"; /* @0226 */
char u5[]="%5u"; /* @0226 */
char pgdn[]="PgDn"; /* @0226 */
char pgup[]="PgUp"; /* @0226 */
char u[]="%u"; /* @0226 */
char yes[]="YES"; /* @0254 */
char no[]="NO"; /* @0254 */
/* @0264 */
char rbshdr[3]={0x43,0x06,0x0A}; /* ru-header RBS */ /* 1005 */
char rhhdr[3]={0x0b,0x80,0x00}; /* rh-header */ /* 1008 */
char rrbshdr[3]={0x43,0x06,0x1A}; /* ru-header RRBS */ /* 1008 */
char drlhdr[3]={0x43,0x06,0x02}; /* 1005 */
char rlihdr[3]={0x43,0x06,0x12};
char BIND1[25] = /* image BIND 1016 */
{0x01, /* 0 */ /* 1016 */
0x03, /* 1 */ /* 1016 */
0x03, /* 2 */ /* 1016 */
0xa0, /* 3 */ /* 1016 */
0xd0, /* 4 */ /* 1016 */
0x20, /* 5 */ /* 1016 */
0x80, /* 6 */ /* 1016 */
0x00,0x00, /* 7 */ /* 1016 */
0x85,0x85, /* 8-9 */ /* 1016 */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 1016 */
0x00,0x00,0x00,0x00}; /* 10-24 */ /* 1016 */
char vt[]="VT "; /* @0226 */
char l_s[]="LS-"; /* @0226 */
char bindhdr[3]={0x6B,0x80,0x00};
char bindfhdr[3]={0x81,0x06,0x85};
short wver=0x0003; /* version 1010 */
/* @0264 */
int vis_attr=0; /* @0227 */
short help28=0; /* @0233 */
struct ovpp { /* 5001 */
struct rqb *wrqb; /* 5001 */
void *xmit_queue_one; /* 5001 */
}; /* 5001 */
typedef struct {
char address[18];
}PRD;
typedef struct {
short buffer[2000];
}DIR;
typedef struct {
short buffer_pool[3000];
char buf_id;
}DLC;
typedef struct {
short id_station;
char count;
}XMTWO;
typedef struct {
XMTWO *xm2;
short rezerv;
short length_in_buffer;
short user_data;
short user_length;
char user_space[50]; /* 5001 */
}XMONE;
typedef struct {
char id_station1;
char id_station2;
char id_station3;
char id_station4;
char id_station5;
char id_station6;
}DEST;
typedef struct {
char blok[58];
char buf_entr[255];
} BUFDRV;
typedef struct {
char outbuf[255];
}ONE;
typedef struct {
char buf_begin;
char buf_end;
}TWO;
typedef struct {
short station_id; /*¿ñÑ¡Γ¿Σ¿¬áΓ«p ßΓᡵ¿¿*/
short buffer_left; /*¬«½¿τÑßΓó« «ßΓáóΦ¿σß∩ íπΣÑp«ó*/
char buffer_get; /*¬«½¿τÑßΓó« íπΣÑp«ó ñ½∩ »«½πτÑ¡¿∩*/
char res[3];
ONE *xm1; /*áñpÑß »Ñpó«ú« »p¿¡∩Γ«ú« íπΣÑpá*/
}TGET;
typedef struct {
short station_id;
short buffer_left;
char reserv[4];
ONE *xm1;
}TFREE;
typedef struct {
short sap_station_id;
short link_station_id;
char timer_t1;
char timer_t2;
char timer_ti;
char maxout;
char maxin;
char maxout_incr;
char max_retry_cnt;
char rsap_value;
short max_i_field;
char access_priority;
char nul;
DEST *pdad;
}TOPEN;
typedef struct {
short station_id;
char transmit_fs;
char rsap;
XMONE *xm1;
XMTWO *xm2;
short buffer_len_one;
short buffer_len_two;
ONE *pbo;
TWO *pbt;
}TWRITE;
typedef struct {
int point_id;
}POINT;
typedef struct {
char adapter;
char node_address[6];
short num_rsv_buffers;
short rcv_buffer_len;
short dnb_buffer_len;
char data_hold_buf;
PRD * pia;
short dir_buf_size;
short dir_pool_blocks;
DIR *buf1;
char dlc_max_sta;
void *received_data;
short *open_data;
char maxout;
char maxin;
char station_count;
short dlc_buf_size;
short dlc_pool_len;
DLC *buf2;
}OPEN;
typedef struct {
short station_id[255];
short *close_data;
}CLOSE;
typedef struct {
char command;
short station_id;
XMONE *xm1;
XMTWO *xm2;
short buffer_len_one;
short buffer_len_two;
ONE *pbo;
TWO *pbt;
short *close_data;
}WRITE;
typedef struct {
short sap_station_id;
char maxout;
char maxin;
char rsap_value;
char access_priority;
DEST *dad;
short *ioctl_data;
short station_id;
char option;
short *received_data;
}OPEN_STATION;
typedef struct {
short station_id_1b;
short *route ;
short *connect_data;
}CONNECT_STATION;
typedef struct {
short station_id;
short *close_station_data;
}CLOSE_STATION;
typedef struct {
short station_id;
char buffer_get;
short *get_data;
}GET;
typedef struct {
short station_id;
ONE *pbo;
short *free_data;
}FREE;
typedef struct {
char ccb_adapter;
char ccb_command;
char ccb_retcode;
char ccb_work;
POINT *pnt;
void *cplt;
void *tab;
} CCB;
typedef struct {
void *buf_pointer;
short rcv_len;
short length_in_buffer;
short adapter_offset;
short user_length;
short station_id;
char options;
char message_type;
short buffer_left;
char rcv_fs;
char adapter_num;
char lan_header_length;
char dlc_header_length;
struct {
unsigned char ac;
unsigned char fc;
char dnode_addr[6];
char onode_addr[6];
struct {
unsigned dl:5;
unsigned tm:3;
unsigned rs:4;
unsigned d:1;
unsigned nk:3;
short ukm1;
short ukm2;
short ukm3;
short ukm4;
short ukm5;
short ukm6;
short ukm7;
short ukm8;
}im;
}lan_header;
long dlc_header;
char rcvd_data;
}RECEIVE_BUF1;
typedef struct{
void *buf_pointer;
short rcv_len;
short length_in_buffer;
short adapter_offset;
short user_length;
char rcvd_data;
}RECEIVE_BUF2;
/* /* @0282 */
CCB *PCCB=NULL;
BUFDRV *PBUF=NULL;
char buffree[8]={0}; /* 5001 */
char buftrn39[6500]={0}; /* 5001 */
int cmd=0;
char PR1_NODE_ADDR[6]={0}; /* 5001 */
short PR1_ST_ID_15=NULL;
short PR1_LINK_ST_ID_19[9]={0};
char mxid[20]={0,0,0,0,0,0,0,0,0xb0,8,0,0,0,0,0,0,0,0,0x0b,0x71};
char wovpp[40]={0};
char tbs[128*sizeof(struct tbs)]={0};
char tabm[1024*sizeof(struct tabm)]={0};
char adapter=NULL;
short station_id15=NULL;
/*void *PBUF=NULL;*/
void *CMD_CPLT=NULL;
void *REC_DATA=NULL;
OPEN parm_open={0};
CLOSE parm_close={0};
WRITE parm_write={0};
OPEN_STATION parm_open_station={0};
CONNECT_STATION parm_connect_station={0};
CLOSE_STATION parm_close_station={0};
GET parm_get={0};
FREE parm_free={0};
PRD product_id_addr={0};
DIR dir_pool_address={0};
DLC dlc_pool_addr={0};
POINT ccb_pointer={0};
XMONE *xmit_queue_one=NULL;
XMTWO *xmit_queue_two=NULL;
DEST dest_addr={0};
BUFDRV bufer={0}; /* 5001 */
DLC *dlc=NULL; /* 5001 */
OPEN *pop=NULL;
CLOSE *pcl=NULL;
WRITE *pwr=NULL;
OPEN_STATION *post=NULL;
CONNECT_STATION *pcnst=NULL;
CLOSE_STATION *pcst=NULL;
GET *pgt=NULL;
FREE *pft=NULL;
DEST *det=NULL;
TGET *ccb_get=NULL;
TFREE *ccb_free=NULL;
TOPEN *ccb_open=NULL;
TWRITE *ccb_write=NULL;
ONE *buffer_one=NULL;
TWO *buffer_two=NULL;
CCB *parm_ccb=NULL;
char *PCCB39=NULL; /* 5001 */
struct BUFDRV *PBUF39=NULL; /* 5001 */
short (* REC_DRV_DATA1)(); /*π¬áºáΓѽ∞ ¡á »/» »α¿Ñ¼á ñá¡¡δσ*/
short (* REC_DRV_DATA)(); /*π¬áºáΓѽ∞ ¡á »/» ºáóÑαΦÑ¡¿∩ ¬«¼á¡ñδ »α¿Ñ¼á*/
short (* CMD_DRV)(); /*π¬áºáΓѽ∞ ¡á »/» ºáóÑαΦÑ¡¿∩ ¬«¼á¡ñ*/
char *UCCB=NULL; /*ôèÇçÇÆàï£ èÄäÇ ææé.âïÄüÇï£ìǃ ÅàÉàîàììǃ äïƒ DRVINT.ASM*/
char buf16[16]={0};
char buf15[16]={0};
char buft15[30]={0};
char buf27[16]={0};
char buft27[12]={0};
char buf28[16]={0};
char buft28[13]={0};
char buf0b[16]={0};
char buft0b[24]={0};
char buf26[16]={0};
char buft26[12]={0};
struct ccb15s *u15ccb=NULL;
struct tab15s *tab15u=NULL;
struct ccb27s *u27ccb=NULL;
struct tab27s *tab27u=NULL;
struct ccb16s *u16ccb=NULL;
struct ccb28s *u28ccb=NULL;
struct tab28s *tab28u=NULL;
struct ccb0bs *u0bccb=NULL;
struct tab0bs *tab0bu=NULL;
struct tab26s *tab26u=NULL;
struct ccb26s *u26ccb=NULL; /* 5001 */
struct crec {
void far *asc_rcv_exit;
short asc_speed;
unsigned char asc_width ; /* word width */
unsigned char asc_parity; /* port & parity */
unsigned char asc_stops; /* number of stop bits */
} rec={0};
union REGS inregs={0}, outregs={0};
struct SREGS segregs={0};
char MSG[101]={0x00};
*/ /* @0282 */
short fd=0; /* @0231 */
char portpath[60]={0x00}; /* @0292 *//* @0304 */
unsigned int pspseg=0; /* @0320 */
char mbreak=0x00; /* @0320 */
char *dosbreak=0; /* @0320 */
char *mdta=0; /* @0320 */
long *dosdta=0; /* @0320 */
int *dospid=0; /* @0320 */
long sample=0x5555aaaa; /* @0320 */
char *old65=0; /* @0320 */
char *ydta=0; /* @0320 */
int ypsp=0; /* @0320 */
char *old24=0; /* @0320 */
unsigned char bufvt=0x00; /* 1082 */
unsigned char buflan=0x00; /* 1082 */
struct FILELIST { /* @0322 */
int current;
int first;
int findoff;
int total;
int files;
int dirs;
int curspos;
int insert;
int offset;
char cdir[MAXDIR+13];
unsigned char sw1,sw2,sw3;
} FL={0,0,0,0,0,0,0,0,0,NULL,0,0,0};
/* O V E R L A Y */
#include "overl0.h"